Vers une interpolation de la température avec la Régression Linéaire Multiple

loic.davadan@agro-bordeaux.fr

19 July, 2018

1. Préparation de l’environnement de travail

  • Installation de Linux

  • Utilisation de Docker : Permet de créer un environnement de travail isolé où la configuration y est différente de l’ordinateur et où la configuration du Docker est la même pour tous ses utilisateurs

  • Utilisation de GitHub : service d’hébergement de gestion des versions des fichiers -> permet de travailler collaborativement sur un même code

2. Récolte des données

2.1. Données d’occupation du sol

  • CORINE Land Cover : données de Copernicus accessibles sur le géoportail belge

  • 47 classes dont 26 présentes en Wallonie -> regroupement en 5 classes : Zones artificielles, Zones de cultures, Zones herbacées, Forêt et Plans d’eau

  • Récupération des données CLC aux stations (physiques et virtuelles) : réalisation de zones tampons autour des stations et calcul de la part de présence de chaque classe dans la zone

##        sid Agricultural areas Herbaceous vegetation    Forest
## 1     vs_1          53.715238             44.050842  0.000000
## 2    vs_10           9.880474             55.039849 33.858245
## 3   vs_100          74.292621             23.349854  1.167155
## 4  vs_1000           0.000000              0.000000 99.995888
## 5 vs_10000          15.540447              3.680151  0.000000
## 6 vs_10001           9.923178             48.652962  5.173979
##   Artificials surfaces Water
## 1             0.000000     0
## 2             1.217319     0
## 3             1.186258     0
## 4             0.000000     0
## 5            80.775290     0
## 6            36.245769     0

2.2. API AGROMET

  • 29 stations du réseau PAMESEB

  • Accès à des données dynamiques horaires : température, humidité relative, humectation du feuillage, ensoleillement

  • 27 stations utilisables si on prend l’ensoleillement

2.3. API ensoleillement

  • Rayonnement solaire : données EUMETSAT récupérées sur une API

  • Données horaires, 875 points répartis sur la Wallonie -> insuffisant pour la précision souhaitée d’1 km² (~ 17000 points)

  • Spatialisation des données solaires à l’aide d’une méthode de krigeage

2.4. Modèle Numérique de Terrain

  • Données SRTM pour récupérer l’altitude avec une résolution de 90m puis calcul de la pente, l’orientation et la rugosité du terrain avec R

  • Données très volumineuses = Temps de calcul important

3. Organisation des données

Données statiques : CLC et MNT

##   gid altitude    slope   aspect roughness    crops artificial   forest
## 1   1 473.6300 3.392046 211.6529 12.917667 63.85818   4.265755  0.00000
## 2   4 345.7340 1.908891 162.7127  9.446796 64.11932  35.834990  0.00000
## 3   7 348.8835 2.611751 165.0716 10.269126 75.28137   0.000000  0.00000
## 4   9 497.7260 1.823958 137.0710  8.165029 99.95431   0.000000  0.00000
## 5  10 389.9188 6.510637 310.6517 22.573696 69.91902   0.000000 30.03530
## 6  13 259.7389 1.669001 288.5355  6.330072 89.50912   0.000000 10.44519
##   herbaceous           geometry        X        Y
## 1   31.83038 721240.2, 568849.6 721240.2 568849.6
## 2    0.00000 714221.2, 543453.8 714221.2 543453.8
## 3   24.67295 750500.7, 550825.6 750500.7 550825.6
## 4    0.00000 753130.6, 581716.9 753130.6 581716.9
## 5    0.00000 734687.9, 580969.6 734687.9 580969.6
## 6    0.00000 641664.8, 588814.6 641664.8 588814.6

Données dynamiques : récupération sur les API des données (température et ensoleillement)

Puis fusion de ces données en un seul tableau de données. Mais peu lisible car beaucoup de lignes (nb stations X nb heures récupérées) et non intégrable dans mlr.

-> Création de “nested data frames”

4. Modélisation

4.1. Machine learning

Définition : Le Machine Learning est un concept stipulant qu’il existe des algorithmes génériques pouvant nous révéler des informations intéressantes sur des données, sans avoir besoin de construire ou de développer un code spécifique. Au lieu d’écrire du code, vous nourrissez donc ces algorithmes avec des données qui leur permettront de construire leurs propres logiques.

Objectif : Réaliser un benchmark où différents algorithmes de régression sont appliqués à différentes tâches (ensemble de données avec différentes combinaisons de variables explicatives et le paramètre ciblé) dans le but de les comparer et de les classer et utiliser une stratégie de rééchantillonage par validation croisée (LOOCV) qui permet d’obtenir les performances souhaitées.

4.2. Machine Learning in R

mlr : package R proposant une interface simplifiée et commune pour toutes les méthodes statistiques à intégrer dans le machine learning.

Paramètres à définir pour la modélisation :

  • Le paramètre ciblé : Température

  • Les méthodes statistiques d’apprentissage : Régression linéaire multiple

  • Les variables explicatives à comparer

  • La méthode de rééchantillonage : validation croisée

5. Visualisation du modèle

  • A travers le benchmark : Performances du modèles (erreur moyenne)

  • A travers mlr : Accès aux paramètres du modèle (coefficients de l’équation de régression)

  • A travers des cartes : Statiques ou interactives (leaflet) & Visualisation des prédictions pour une heure donnée mais aussi de l’erreur relative

Création d’une couche contenant les prédictions, visualisée avec une palette de couleur

Création d’une couche contenant l’erreur associée à chaque prédiction avec un niveau de transparence variable (couche blanche avec opacité plus importante si l’erreur est élevée)

6. Suite du stage

La démarche est définie et prête pour créer les modèles.

Prochain ojectif : Créer le modèle à partir de 5 ans de données et obtenir la meilleure combinaison de variables explicatives